perm filename ARPA.72C[DOC,TOB]1 blob
sn#018203 filedate 1972-12-28 generic text, type T, neo UTF8
00100 During the past several years our vision effort has shifted from
00200 simple scenes of polyhedra to complex objects in richer context. Not
00300 all problems with towers of polyhedra have been solved, but there are
00400 a host of reasons for moving on. Manipulation has also proceeded
00500 from manipulation of blocks to assembly operations for many of the
00600 same reasons. Minsky and Papert [Minsky 1972] have described the
00700 central issues and the intellectual position of robotics in
00800 artificial intelligence. We refer to that discussion as background to
00900 our motivation to direct research to real world scenes and objects.
01000 An important motivation is to develop applications for manipulation
01100 and visual feedback capabilities which have been developed here. The
01200 time is ready for the first transfer of robotics technology from
01300 laboratory to prototype assembly stations. We discuss robotics
01400 applications more fully in another section.
01500
01600 Another major motivation is to face new issues; systems have come a
01700 few steps toward heterarchical systems from heirarchy; from a
01800 succession of homogeneous passes with compounding errors to a system
01900 structure where high and low levels interact closely. One aspect of
02000 such a system is the use of many functionally independent techniques;
02100 this has meant including experimentation with color and texture,
02200 depth information, motion parallax and image prediction. The choice
02300 of problems as paradigms is central to the way in which perceptual
02400 systems evolve. A great deal can be done with simple scenes of
02500 polyhedra using a single image in one color, ignoring all other
02600 perceptual abilities. Since most perceptual problems can be resolved
02700 within a single image, one approach is to exhaust those
02800 possibilities. Important areas are missed; for example, visual
02900 feedback is clumsy without depth information. For our plans, visual
03000 feedback for manipulation is primary.
03100
03200 There are other ways in which the tower of blocks paradigm is
03300 inadequate for our purposes. Low level feature description
03400 operators are tailored for this case. Adequate region and
03500 edge-oriented descriptors must be evolved. With polyhedra, only
03600 simple preliminary grouping mechanisms have been programmed. More
03700 intermediate level descriptors must be implemented.
03800
03900 Although real world scenes are much more complicated, they may be
04000 simpler to perceive in that they have a much richer context. There
04100 is only very general knowledge available in the usual blocks task;
04200 usually color, size, and support are unspecified. In an assembly
04300 task, sizes are known, color is used to code, and parts fit in
04400 special ways. Often recognition can be based on obvious special
04500 features. These tasks are good exercise in developing goal-oriented
04600 visual systems. Although development and utilization of intelligent
04700 robots will progress gradually, the information sciences will impact
04800 industry enormously over a shorter term. An immediate effect is to
04900 streamline information flow in the manufacturing process. Simple
05000 systems can keep track of delayed effects of design decisions, lower
05100 cost of preparation and transmission, and increase accessibility.
05200 Computer controlled scheduling, resource allocation, and
05300 transportation routing are important to most of industrial production
05400 [Anderson 1972]. We see a major contribution from techniques being
05500 pioneered in artificial intelligence laboratories, and that such
05600 research will have payoff throughout the entire development of
05700 intelligent systems. Enormous efficiency increases will come from
05800 analysis of assembly and inspection in terms of some "primitive
05900 operations". In the past, computer cost and lack of sophistication
06000 has limited the ability for such analysis, and the slow pace of
06100 automation has not pressed hard for analysis. Now it will be
06200 possible to find common fabrication and assembly operations
06300 throughout a large company, to discover commonality in design and
06400 components. The success of that analysis depends upon representation
06500 of fabrication operations and shape. Representation is a current
06600 concern in robotics labs and may have early applications. This
06700 orientation to the manufacturing system is already beginning to have
06800 effect with the "group technology" approach, which attempts to
06900 describe parts and operations, and group them together in one part of
07000 the factory. Until the establishment of such analysis and
07100 commonality of operations, automating will be made much more
07200 difficult.
07300
07400 Considerations are similar for programming automation devices such as
07500 the assembly station we describe. Even if programming is difficult,
07600 there will be considerable applications for dexterous assembly
07700 systems. For example, for the military, it is preferable to stockpile
07800 programs than to stockpile parts or systems for contingency. In batch
07900 production, tapes can be saved to cut stockpiling. But to achieve
08000 full effect on industry, robot systems must be easy to program for
08100 new tasks. Our current work is concerned with strategy generation
08200 and automating visual feedback. Time-sharing systems will be
08300 necessary to perform scheduling, resource allocation, routing
08400 operations, etc. Thus there is a natural division of labor between
08500 the time-sharing system and small machines. The strategy generation,
08600 automating feedback, and interactive system for computer-aided
08700 mechanical design expect to reside in the central system.
08800
08900 A major part of our effort is directed toward the representation of
09000 complex shapes, for use in vision and strategies. While it might
09100 seem that this effort has only distant applications, for the reasons
09200 discussed above, early applications will be for convenient
09300 man/machine interaction for programming robots and for
09400 systematization. We can expect that in general, much of the work in
09500 symbolic representation of the real world will have early payoff.
09600 Present non-intelligent robots are programmed by specifying points
09700 along a path to be repeated. With computer control, optional
09800 trajectories can be executed in case of contingency. The engineer
09900 must then specify what normal function is, how to monitor it, and how
10000 to recognize recoverable situations. To do so, he can specify this
10100 symbolically in interaction with a program in which he specifies
10200 normal and abnormal conditions, shape of parts (usually some variant
10300 of standard parts), the mating of parts for assembly, and schematic
10400 descriptions of operations for insertion and inspection. The
10500 significance of representations in general is to aid these processes.
10600 Our representation provides a natural way of speaking about the shape
10700 of objects, in terms of a structured description of part/whole with
10800 primitives which resemble many fabrication operations. The better
10900 the representation, the more it provides intuition for programs as to
11000 the intent of operations and the function of parts.
11100
11200 A representation aids communication in both directions. We contend
11300 that our representation is important for computer graphics. This
11400 allows display of the machine's concepts to the user, and allows
11500 greater use of predictive mechanisms based on internal models. Input
11600 could be made visually with a depth measuring system such as we have
11700 been using for the last two years. Since the operation would be done
11800 on a central facility, the computer would be adequate for this task.
11900 We expect that the representation will be of considerable use in
12000 monocular vision also. We hope to substantiate these predictions.
12100 Another application is automating design of numerically machined
12200 parts. That will be simplified to the extent that the machine and
12300 the user speak the same language of subparts and their descriptions.
12400 Benefits would come from ease of programming and interaction,
12500 variable tolerances for critical parts and better monitoring
12600 operations.
12700
12800 THE PILOT ASSEMBLY STATION
12900
13000 We seek other funds to partially support application of robotics
13100 techniques to industrial assembly and inspection. We will implement
13200 over the next few years a prototype assembly station and a support
13300 system for programming the assembly station for its tasks.
13400
13500 The assembly station is assumed to be normally connected to a large
13600 time-shared computer facility. Not only does this appear to be a good
13700 design for our problem, but it is also necessary for an integrated
13800 programmed automation facility. The only emphasized statement in the
13900 ARPA study report [Anderson 1972] is: "The maximum impact of
14000 computers in manufacturing will come from complete, real-time
14100 computer cognizance and control of all processes and resources,
14200 allowing the precise scheduling and allocation of these resources."
14300
14400 Each assembly station will consist of a small digital computer, one
14500 or more manipulators and cameras. Manipulators and cameras will be
14600 combined as modules in systems to suit a given task, and will be
14700 digitally controlled by the station computer.
14800
14900 The program in the station computer will be flexible as to the number
15000 and position of manipulators and cameras. It will control input from
15100 the cameras, provide for some pre-processing of the picture and the
15200 application of simple tests to the visual data. In the case of
15300 manipulators it will provide for simultaneous servo control. It will
15400 also process other inputs, such as from touch sensors on the
15500 manipulators, from photocell interrupt devices, limit switches, etc.
15600 Both analog and binary outputs will be available for the control of
15700 other devices.
15800
15900 Each station computer will have access to a task program specifying
16000 the actions and tests it should perform to carry out its task. This
16100 task program will be compiled by the central computer. Compilation
16200 will consist of the analysis of predicted scenes in order to specify
16300 simple tests that the station computer can carry out, the calculation
16400 of collision free trajectories for the manipulators, the sequence of
16500 operations and simple contingency plans. etc. We are planning for
16600 tasks whose normal execution does not require detailed scene
16700 analysis. If scene analysis becomes necessary (e.g. a dropped part)
16800 we envision the station sending an image to the central computer for
16900 processing.
17000
17100 The central computer will perform overall control of the individual
17200 assembly stations and the relative rates of production. If at any
17300 station a planned test fails, for which a contingency plan does not
17400 exist, or any unexpected sensor signals are received, the central
17500 computer will also be interrupted and appropriate actions taken.
17600
17700 Most of the hardware required for the assembly station has been
17800 developed for the laboratory. Manipulators and cameras will be
17900 discussed in detail below. The major additional problem is to refine
18000 the existing designs to meet the demands of an industrial
18100 environment.
18200
18300 The most difficult part of the assembly station, and the heart of the
18400 of the proposal is a demonstration of the feasibility of the station.
18500 We plan to do this by developing programs which actually assemble and
18600 inspect a variety of fairly complex manufactured items.
18700
18800 A typical example is our current project, assembly of an automobile
18900 water pump. The major parts are to be located, the screws are
19000 supplied by a feeder, as is standard. Locating the body and cover of
19100 the pump require a gross localization, then a fine localization of
19200 screw holes. Touch provides a final accuracy and independent
19300 coordination of the hand. The placing of alignment pins within
19400 screw holes could be monitored visually; although in this case,the
19500 previous actions provide adequate accuracy. Placing of the cover
19600 over alignment pins can be carried out without vision. Improved
19700 force sensing now under development will be useful for that
19800 operation.
19900
20000 As we move to more difficult tasks, the sophistication required goes
20100 up quite rapidly. The current manipulation routines seem to be
20200 expandable to cover anticipated problems, especially since we intend
20300 to employ special purpose manipulators (tools) for some tasks. The
20400 main part of our effort will be vision for assembly; an assembly task
20500 will be performed using vision, touch, and two hands. The vision
20600 effort will be integrated with other abilities, and while no great
20700 generality will be stressed, new modules will be incorporated into
20800 the system, and a set of techniques will evolve. These will depend
20900 heavily on techniques similar to those of our recent studies in
21000 visual feedback and hand/eye coordination [Gill 1972]. The internal
21100 model of the world will be used to predict visual appearance of
21200 selected areas of the scene, and a set of verification procedures
21300 will confirm or contradict the predictions. Many of the operations
21400 will be connected with supplying feedback to manipulation, for
21500 alignment and insertion. These visual procedures will have models for
21600 the parts and approximate locations.
21700
21800
21900
22000
22100 This and other visual tasks connected with assembly will initially be
22300 performed as special case problems. In addition, to make these
22400 techniques available, we will pursue development of strategy
22500 programs. This step is essential if intelligent assembly devices are
22600 to be conveniently programmed for complex tasks. Within the division
22700 of labor between large and small machines, this facility must reside
22800 in the central time-sharing facility which has large memory, file
22900 storage, and problem-solving languages. The system must have a model
23000 of the parts for assembly,and a sequence of instructions for
23100 assembly. It will be necessary to have a representation of shape and
23200 models for usual assembly operations such as insertion and alignment,
23300 and the ability to solve simple problems in connection with these
23400 operations, all this to enable convenient communication with the
23500 user. When these facilities exist, the addition of new features and
23600 operations can be incorporated smoothly, so that users can call on a
23700 growing library of planning modules. The result of a planning effort
23800 is a cycle of machine planning and man-machine interaction which
23900 results in a plan network for the mini computer which controls
24000 individual machines.
24100
24200 RESEARCH IN VISION
24300
24400 Our past work on visual feedback [Gill 1972] in stacking objects and
24500 inserting objects in holes is directly relevant to vision for
24600 assembly. The system provides feedback for picking up, then at the
24700 final position, with the hand still holding the block and in view,
24800 predicts the appearance of edges and corners within a small window
24900 around the faces to be aligned, and uses a corner/edge finder to
25000 determine alignment error. Incremental motion capability of the arm
25100 is used for error correction. That work incorporates
25200 self-calibration to coordinate hand and eye coordinate systems and
25300 maintain reliability (by maintaining calibration), as well as to
25400 limit search by accurately predicting expected features. Two
25500 well-developed systems exist to aid future work in visual feedback.
25600 GEOMED [Baumgart 1972a] is a geometric editor which allows the input
25700 of geometric models and manipulation of these models. OCCULT
25800 [Baumgart 1972b] is a hidden line elimination program which gives a
25900 symbolic output, valuable for vision, in a few seconds.
26000
26100 We have a set of visual operations which provide confirmation of
26200 predictions and direct interaction with the visual image. For
26300 outdoor scenes, color is an important basis for region forming, and
26400 for preliminary scene organization. Several preliminary color region
26500 analysis programs have been developed [Binford, unpublished, Bajcsy
26600 1972]. These will be extended as described below. An edge operator
26700 [Hueckel 1969,1972] and a region-based corner/edge finder [Gill 1972]
26800 both operate on small windows of the scene, as directed by a higher
26900 level. An edge verifier is used to confirm or reject edges
27000 predicted from context [Tenenbaum 1970]. Color identification has
27100 long been demonstrated. Recently, a program has been implemented
27200 based on Land's Retinex model of color constancy in vision. This
27300 involves taking intensity measurements with the camera through red,
27400 green, and blue filter, and setting up a calibration scheme for the
27500 Goethe color triangle in the absence of any external color standard
27600 (white). This is achieved by normalizing the intensities of regions
27700 within the scene through each filter, and defining a color triangle
27800 derived from this ordering data, with the center of the triangle
27900 designated as white. The regions may then be assigne color names in
28000 the normal way. The program as it stands can cope reasonably well
28100 with table top scenes under varied lighting conditions - sunlight,
28200 quartz-halogen and flourescent, and therefore shows the same kind of
28300 color constancy as do humans.
28400
28500 We have directed part of our work to analysis of outdoor scenes.
28600 Outdoor scenes were analyzed with a combination of color and texture
28700 region analysis [Bajcsy 1972]; depth cues were taken from the
28800 gradient of texture. A symbolic representation of texture and of the
28900 world were adopted; descriptors of texture elements were obtained as
29000 analytic expressions from the Fourier spectrum. A considerable
29100 improvement could be made by combining these techniques with several
29200 techniques which obtain depth information from correlation of images.
29300 Motion parallax [Nevatia draft] has been used with a succession of
29400 images. The successive images differ little from one another and
29500 allow local correlation without ambiguity. In a sense, this
29600 combines the advantages of narrow and wide angle stereo, since stereo
29700 ambiguity is avoided, while large baselines can be accumulated by
29800 tracking regions over several images. Another system incorporates
29900 several facilities in wide angle stereo [Quam 1972]; local statistics
30000 are used to limit search for correspondence of small areas in two
30100 images. An interesting feature is self-orientation: given two
30200 cameras whose orientation is unknow, the system uses guided search to
30300 establish a few correspondences, then determines the relative
30400 orientation of the two cameras. Such self-orientation and
30500 self-calibration facilities have considerable significance for
30600 industrial systems which can be maintained calibrated. These are
30700 complementary depth sensing techniques; motion parallax can be used
30800 for planning paths and characterizing large scale terrain features.
30900 Two camera stereo can be used for local manipulation and disaster
31000 avoidance. Visual feedback with stereo vision is potentially more
31100 powerful than without. We have a program which has demonstrated
31200 stereo visual feedback [Binford, unpublished].
31300
31400 A thesis by Agin [Agin 1972] showed considerable progress in
31500 representation and description of complex objects. He implemented a
31600 laser ranging device [Binford 1970] which was operational two years
31700 ago. Using depth data and a representation of shape [Binford 1971]
31800 which we have developed, we have been able to describe the parts of
31900 objects like a doll, snake, and glove [Agin 1972]. The
32000 representation is based on segmenting objects into parts connected at
32100 joints. Parts are described by a volume representation with
32200 arbitrary cross section defined along a space curve. The data were
32300 analyzed by techniques suggested by the representation. Preliminary
32400 segmentation was made into parts suggested by some primitives of the
32500 representation, smoothly varying, locally cylindrical parts. An
32600 iterative procedure defined an approximation to the axis of the
32700 segment, fit circular cross sections normal to the axis, then
32800 obtained an estimate of a global cross section function which was
32900 then used to extend the axis and cross section as far as consistent.
33000
33100 A study of visual and depth ranging techniques has been carried out
33200 which provides a background for choosing sensors and interface, and
33300 making cost estimates [Binford 1972,Earnest 1967]. An interesting
33400 result is that the cost of a laser ranging system such as ours is
33500 less than $1k given a tv system. We have maintained a calibrated hand
33600 and vision system for several years [Sobel 1970], and have developed
33700 self-calibration techniques with one and two eyes [Yakimovsky
33800 unpublished, Hannah (in [Quam 1972]), Gill 1972].
33900
34000 A system for understanding scenes of blocks from single views has
34100 been implemented [Falk 1970]; it segments objects, matches against
34200 internal models, predicts appearance from its assumptions, and
34300 searches for verification and contradiction based on the predicted
34400 image. Support and spatial relations are also obtained. There has
34500 been past work on programs to obtain line drawings as input to
34600 recognition systems. An earlier system was based on limited context
34700 of expecting continuation of edges at vertices and predicting missing
34800 edges in certain expected configurations [Grape 1970]. A more recent
34900 approach has been to use models within the process of generating line
35000 drawings, so that the most reasonable next guess can be made and
35100 context used intrinsically in the formation of line drawings.
35200
35300 VISUAL DEVELOPMENT FOR ASSEMBLY
35400
35500 In a later section, we describe assembly of a pump carried out with
35600 the manipulator using touch, without vision. We are implementing
35700 vision programs to aid the assembly. In the pump assembly, visual
35800 tasks consist of gross location of large parts, then using the
35900 information to predict location of images of holes, and monitoring of
36000 insertion into holes. These tasks are typical of the simple visual
36100 operations which we will implement or adapt for assembly. We will
36200 greatly expand our efforts with visual feedback. At present, visual
36300 feedback techniques are limited to polyhera. We will improve image
36400 prediction techniques to predict images of objects with curved edges.
36500 We will develop a simple region analysis program which assumes
36600 adequate contrast to locate the curved edges predicted within a small
36700 window. Color will be used when necessary. We will implement
36800 two-dimensional matching of boundary curves with predicted curves.
36900 These will be combined with our existing edge operator and
37000 corner/line operator. We will maintain a calibrated system and
37100 improve calibration updating so that reliability is maintained at a
37200 high level.
37300
37400 VISION RESEARCH
37500
37600 We will improve the laser hardware so that it can be used widely and
37700 extend our work with representation of complex objects using depth
37800 data. We are able to make complete descriptions of objects which
37900 consist of a single primitive segment, such as a torus, a snake or a
38000 cone. The programs can segment dolls, toy horses, in intuitively
38100 natural ways [Agin 1972]. It is necessary to improve our segmentation
38200 process in order to proceed to joining primitive segments at joints
38300 and make complete descriptions of complex objects. When we have
38400 these descriptions, the computer will have symbolic internal models
38500 of objects. No recognition has yet been done, although we are in a
38600 position to recognize those objects which have only one primitive
38700 segment, for which we can make complete descriptions. For recognition
38800 of more complex objects, once we have complete descriptions, we will
38900 encode the basic properties of the representation within a visual
39000 memory scheme which allows access of hypothesized similar
39100 three-dimensional shapes, with associated surface information, to
39200 compare more closely with extensive verification. We intend to apply
39300 large parts of our programs for description and recognition of curved
39400 objects using only monocular intensity information. This is a much
39500 harder problem, but within our representation, shares much of the
39600 same code, and relies on the same conceptual basis of local
39700 three-dimensional models.
39800
39900
40000 We will continue work on color region analysis which is based on
40100 proximity rather than contiguity. This was the plan outlined in
40200 previous proposals, and has shown necessary by our work with textured
40300 scenes [Bajcsy 1972]. Another effort combines region analysis with
40400 a decision theoretic approach based on a world model. We anticipate
40500 that these modules will aid the integrated system to function in more
40600 complex environments than have been attempted in the past. There is
40700 a growing effort on navigation of vehicles in outdoor scenes.
40800 While this is not directly relevant to the industrial environment, it
40900 does reflect the growing involvement in complex visual tasks, and
41000 will lead to further development of an integrated visual system.
41100
41200 A strategy project is underway dealing with the world of blocks.
41300 The project begins from the idea that robot vision cannot be studied
41400 except as a part of intelligent behavior in general. Visual ability
41500 is FOR something, and without reasonable expectations about the
41600 world, the task of seeing is bound to be extremely difficult. We
41700 plan to implement a system which can do simple manipulation tasks
41800 ("pick up the red block", "put all the cubes in the box") in an
41900 environment of plane-faced objects, and operating in a dialogue mode.
42000 The system will have a good but imperfect world model all the time,
42100 and the essence of its ability will be the constant use of this model
42200 to understand situations and in particular to recover from errors
42300 ("Is that block no longer there because the arm knocked it off?").
42400 The main point of the project is to find a good organization for
42500 knowledge about the simple world in question: we expect that when
42600 this is done the complex subroutines of current vision programs
42700 (linefinders etc) will be found to be unnecessarily complex in that
42800 they embody in an inefficient way at a low level, knowledge which our
42900 system will contain at a higher level. In part, this will be done by
43000 expanding the facilities available. A stereo vision module is being
43100 programmed, using line drawings and integrating stereo with the
43200 segmentation and recognition processes.
43300
43400 We are at work on a program which exploits new features of SAIL
43500 [Feldman 1972] for dealing with multi-process tasks in a
43600 problem-solving environment. The aim is to construct a driver program
43700 to accomplish a simple assembly task under somewhat uncertain
43800 conditions. Making use of the new language features, one can arrange
43900 for such a program to cope with errors in the execution of tasks -
44000 e.g. to recover from dropping things, breaking things, and further to
44100 try several different but possibly cooperative methods for solving a
44200 problem. It is intended that this program will have its own vision
44300 procedures specially adapted for finding tools, e.g. wrenches,
44400 screwdrivers, etc., and parts, e.g. nuts and bolts. An interpreter is
44500 being developed to allow flexible description of the task by the
44600 user.
44700
44800 MANIPULATOR DEVELOPMENT
44900
45000 Manipulator research began at Stanford Artificial Intelligence
45100 Laboratory in 1965 with the acquisition and programming of a
45200 prototype Rancho Orthotic Arm. A later version of this arm was used
45300 in vision directed block stacking programs.
45400
45500 Our present arm, the result of a continuing design project, replaced
45600 the Rancho Arm in 1970. This arm like its predecessor was controlled
45700 by a digital servo program running under the time sharing computer.
45800 The new arm was used in the "Instant Insanity" demonstration in 1971.
45900 A second arm of the same type, with only minor modifications, is
46000 currently being interfaced to the computer. Both arms will share a
46100 common work space and will be able to be used individually, or
46200 together for two handed tasks.
46300
46400 Manipulator research moves ahead simultaneously on three fronts:
46500 control, primitives and devices. Tasks are translated into an
46600 existing hand language and where the task cannot be accomplished in
46700 terms of existing primitives, new primitives are formulated in a
46800 consistent manner. When a new primative is formulated, real time
46900 routines are developed to perform the action. This also leads, in
47000 many cases, to the development of new hardware. Also as new
47100 developments occur in hardware design, existing real time routines
47200 are either re-written or modified.
47300
47400 Research is now concentrating on the following areas:
47500
47600 Strain gauge instrumentation of the wrist, in order to allow for more
47700 sensitive interaction of the hand with a task. High resolution,
47800 high sensitivity touch sensors, to increase tactile recognition and
47900 control abilities. These developments will lead in turn to new
48000 control concepts.
48100
48200 Development of tools for the hand. These tools can be instrumented
48300 such that the computer can feel and or see at the end of the tool.
48400 This should be a very important area of research as it goes beyond
48500 present human capabilities.
48600
48700 Two handed arm control, the planning and execution of tasks requiring
48800 the coordinated motion of both arms. This will require an extension
48900 of the existing servo program and the analysis of synchronization
49000 problems. The development of collision avoiders, so that arms will
49100 not collide with other objects and with each other.
49200
49300 Modification of the existing arm design to provide for better
49400 incremental motions, more degrees of freedom and a more rugged design
49500 suitable for industrial use. Development of arm and eye computer
49600 interfaces. These contain synchronized analog/digital converters
49700 for input and current controlled drivers for output.
49800
49900 The development of new hands is expected as more complex tasks are
50000 attempted. At present, with only one hand, we have been performing
50100 the positioning type of hand actions. When the second arm is
50200 operational we will be able to perform holding and pulling actions as
50300 well.
50400
50500 DEMONSTRATIONS OF MANIPULATION
50600
50700 Operations controlled by force have been demonstrated by turning a
50800 crank and screwing a nut onto a bolt. The hand language and
50900 manipulation facilities are shown in the assembly of a small pump.
51000 The positions of the parts are known approximately; they are located
51100 on a pallet as expected in industrial practice. By touch, the hand
51200 locates position and orientation of the pump body more accurately.
51300 Aligning pins are inserted into the holes to guide the gasket and the
51400 pump cover. Screws are obtained from a feeder, as is standard. All
51500 operations have been performed in the assembly, but the total
51600 reliability is still sufficiently low that one error or another
51700 occurs. Vision has not been used in the assembly.
51800
51900 SYSTEM REQUIREMENTS FOR ADVANCED AUTOMATION
52000
52100 A key element in the development of any large programming effort is
52200 the software support. There has been continual effort along these
52300 lines at the Stanford Artificial Intelligence Laboratory and many
52400 useful ideas have been developed. We propose to extend the research
52500 along two separate lines: support for research and system software
52600 for operating automated systems. We will briefly describe our past
52700 efforts in this area and what we propose to undertake.
52800
52900 The Stanford Artificial Intelligence Laboratory has pioneered in
53000 several areas of system programming, including display-oriented
53100 timesharing systems, interactive graphics, and programming languages.
53200
53300 A great deal of additional effort has gone into direct support of
53400 hand-eye research. Very early, we established a set of standard
53500 formats and library routines [Pingle 72a]. A programming language,
53600 SAIL, was implemented in 1968. The language incorporates special
53700
53800 11 features for large real-world-oriented problem solving systems
53900 and is currently in use at a number of Artificial Intelligence and
54000 other laboratories.
54100
54200 As we began to assemble larger and more sophisticated collections of
54300 programs, we felt a need for flexible mechanisms for cooperating
54400 sequential processes. The resulting monitor and language features [
54500 Feldman & Sproull 1971] have worked well for us and have been
54600 influential on other projects. Recently, we have added an
54700 additional set of features to SAIL [Feldman 1972] to facilitate
54800 non-deterministic and event-directed programming. The early
54900 reactions to this work, both within the laboratory and without has
55000 been very encouraging.
55100
55200
55300 A major share of the programming research effort will be concentrated
55400 on developing a programming system for automated assembly. This will
55500 combine ideas from our past work on languages, representation,
55600 computer graphics and arm control. We view this task as a branch of
55700 the larger effort on automatic programming being undertaken in this
55800 laboratory aad elsewhere.
55900
56000
56100
56200
56300
56400
56500
56600
00100 [Anderson 1972] R. Anderson,"Programmable Automation, The Future
00200 of Computers in Manufacturing", Datamation, Dec 1972.
00300
00400 [Agin] G. Agin, "Description and Representation of Curved Objects",
00500 Ph.D. Thesis, Computer Science Dept., Stanford University, September
00600 1972.
00700
00800 [Bajcsy 1972] "Computer Identification of Visual Texture" Computer Science
00900 Department, Stanford University, (1972).
01000
01100 [Baumgart 1972a] B. Baumgart, "GEOMED - A Geometric Editor", May 1972.
01200 SAILON-68,Artificial Intelligence Lab, Stanford University,
01300
01400 [Baumgart 1972b] Baumgart, Bruce G., WINGED EDGE POLYHEDRON REPRESENTATION,
01500 AIM 179,Artificial Intelligence Lab, Stanford University,October 1972.
01600 (forthcoming)
01700
01800 [Binford 1972]"Sensor Systems for Manipulation", Conference on Remotely Manned
01900 Systems, JPL, Pasadena, Calif, Sept 1972.
02000
02100 [Binford 1971] "Visual Perception by Computer", Invited paper at IEEE Systems
02200 Science and Cybernetics, Miami, Dec 1971.
02300
02400 [Binford 1970] T.O.Binford, "Ranging by Laser", Internal Report,
02500 Artificial Intelligence Lab, Stanford University, Oct 1970.
02600
02700 [Earnest 1967] L.D.Earnest,"Choosing an eye for a Computer";
02800 AI Memo 51, Artificial Intelligence Lab, Stanford University, 1967.
02900
03000 [Falk 1971] G. Falk, "Scene Analysis Based on Imperfect Edge Data", Proc. 2IJCAI,
03100 Brit. Comp. Soc., Sept. 1971.
03200
03300 [Feldman 1972] with others,"Recent Developments in SAIL-An Algol Based Language for Artificial
03400 Intelligence", (with others). CS 308, Stanford University, August 1972.
03500 To appear in Proc. Fall Joint Computer Conference, 1972.
03600
03700 [Gill] Gill, Aharon, VISUAL FEEDBACK AND RELATED PROBLEMS IN COMPUTER
03800 CONTROLLED HAND EYE COORDINATION, AIM 178,October 1972.
03900
04000 [Grape 1969] "Computer Vision through Sequential Abstraction",
04100 Artificial Intelligence Laboratory, Internal Report, 1969.
04200
04300 [Grape 1970] "On predicting and Verifying Missing Elements in Line-Drawings"
04400 Artificial Intelligence Laboratory, Internal Report, March 1970.
04500
04600 [Hueckel] M.H. Hueckel, "An Operator Which Locates Edges in Digitized
04700 Pictures", Stanford Artificial Intelligence Laboratory AIM-105,
04800 December 1969, JACM, Vol. 18, No. 1, January 1971.
04900
05000 [Minsky 1972] "Artificial Intelligence Progress Report", AI Memo 252,
05100 MIT AI Lab, (1972);
05200
05300 [Paul] R. Paul, "Trajectory Control of a Computer Arm", 2nd
05400 International Joint Conference on Artificial Intelligence, 1971.
05500
05600 [Paul] R. Paul, "Modelling, Trajectory Calculation and Servoing of a
05700 Computer Controlled Arm", Ph.D. Thesis, Computer Science Dept.,
05800 Stanford University, Sept. 1972.
05900
06000 [Pingle 1972a] Karl K. Pingle, "Hand/Eye Library", Stanford
06100 Artificial Intelligence Laboratory Operating Note 35.1, January,
06200 1972.
06300
06400 [Pingle 1972b] K.K. Pingle and J.M. Tenenbaum, "An Accomodating Edge
06500 Follower", IJCAI-2. Proceedings of the 2nd. International Symposium
06600 on Industrial Robots, May 1972, Chicago, Illinois.
06700
06800 [Quam 1972] L. H. Quam, S. Liebes, Jr., R. B. Tucker, M. J. Hannah,
06900 B. G. Eross, "Computer Interactive Picture Processing", Stanford
07000 Artificial Intelligence Laboratory AIM-166, April 1972.
07100
07200 [Scheinman] V. D. Scheinman, Design of a Computer Manipulator,
07300 Stanford Artificial Intelligence Project, Memo AIM-92, June 1969.
07400
07500 [Sobel] Irwin Sobel, "Camera Models and Machine Perception", Stanford
07600 Artificial Intelligence Project Memo AIM-121, May, 1970.
07700
07800 [Swinehart] D. Swinehart, R. Sproull, "SAIL", Stanford Artificial
07900 Intelligence Laboratory Operating Note 57, November 1969.